

// =========================================
// 3. 编写一个函数，计算两个数字的和／差／积／商
// - 使用传参的方式
{
    function getSum(addend, sign, sumMand) {
        if (!isNaN(addend) && !isNaN(sumMand)) {
            if (sign === "+") {
                return addend + sumMand
            } else if (sign === "-") {
                return addend - sumMand
            } else if (sign === "*") {
                return addend * sumMand
            } else if (sign === "/") {
                return addend / sumMand
            } else if (sign === "%") {
                return addend % sumMand
            }
        } else {
            return "传的格式错了"
        }
    }

    // console.log(getSum(200, "+", 200))
}

// =========================================
// 4. 编写一个函数，计算三个不同数字的大小，按从小到大顺序打印
// - 穷举法
{
    function sort() {
        for (let i = 0; i < arguments.length; i++) {
            for (let j = 0; j < arguments.length - 1 - i; j++) {
                if (arguments[j] > arguments[j + 1]) {
                    let sum = arguments[j];
                    arguments[j] = arguments[j + 1];
                    arguments[j + 1] = sum;

                }
            }
        }
        return arguments
    }

    // console.log(sort(213, 0, 5, 123, 12312, 1241, 4125, 35, 4, 656, 7, 56, 89679, 7807, 80, 89, 6, 78, 356, 34, 52,))
}
// =========================================
// 5. 编写一个函数，实现任意个任意数字的求 和 或 积 的函数

{
    function yunSuan(){
        //因为计算减法和除法的时候，第一个数字是0，对结果有影响，所以把第一个数字的值赋值给对应的声明
        //arguments[0]就是第一个
        var add = arguments[0];
        var chu = arguments[0];
        for(i = 1;i < arguments.length;i++){//for循环遍历所有值
            add += arguments[i];
            chu *= arguments[i];
        }
        return [add,chu]
    }
    console.log(yunSuan(9,2,4,2))
}

// =========================================
// 6. 编写一个函数，计算任意两个个位数之间所能组成的两位数的奇数
// - 计算0，3之间能组成的奇数个是：01、21、03、13、23、31
// - 不要使用返回值
{
    function odd(start,end) {
        for (let i = start; i <= end; i++) {
            for(let j = start; j <= end; j++){
                if(i == j){continue}
                if((i * 10 + j) % 2 !== 0){
                  let sum = i * 10 + j
                    sum = sum < 10 ? "0"+ sum : sum
                    console.log(sum)
                }
            }
        }
    }

    odd(0,3)
}

// =========================================================
// 7. 某个公司采用公用电话传递数据，数据是四位的整数，在传递过程中是加密的，加密规则如下：每位数字都加上5,然后用除以10的余数代替该数字，
//     再将第一位和第四位交换，第二位和第三位交换，请编写一个函数，传入原文，输出密文
// - 进去：3715
// - 出来：0628
// - 两个变量交换，再创建第三个变量做过渡
// 请编写一个函数，传入原文，输出密文
// {
//     var jiami = function (num) {
//         console.log(num);
//         // 这边是找出是各位数, 十位数, 百位数, 千位数, 就是吧这四个数字分开
//         //分别取出个十百千位
//         var first = parseInt(num / 1000);
//         // console.log("-----" + first)
//         var sec = parseInt(num / 100 % 10);
//         console.log("-----" + sec)
//         var third = parseInt(num / 10 % 10);
//         // console.log("-----" + third)
//         var four = parseInt(num % 10);
//         // console.log("-----" + four)
//         // 这边是把每一个数字在原有的基础上加5
//         // var num = +prompt('请输入四位数数据');
//         //每位数字+5
//         first += 5;
//         sec += 5;
//         third += 5;
//         four += 5;
//         // 这边是 如果上线给给我给出来的数字是是多位数的时候吧 用余数做值
//         //除于10的余数
//         first %= 10;
//         sec %= 10;
//         third %= 10;
//         four %= 10;
//         // 交换数字
//         //第一位跟第四位交换
//         var temp = first;
//         first = four;
//         four = temp;
//         //第二位跟第三位交换
//         var temp = sec;
//         sec = third;
//         third = temp;
//         //拼接字符串
//          num = parseInt("" + first + sec + third + four);
//         return num
//
//     }
//     jiami(3211)
// }